import Vue from 'vue'
import VueRouter from 'vue-router'

// import Login from '../components/Login.vue'
const Login = () => import(/* webpackChunkName: "login_home_welcome" */ '../components/Login.vue')
// import Home from '../components/Home.vue'
const Home = () => import(/* webpackChunkName: "login_home_welcome" */ '../components/Home.vue')
// import Welcome from '../components/Wellcome.vue'
const Welcome = () => import(/* webpackChunkName: "login_home_welcome" */ '../components/Wellcome.vue')
// import Users from '../components/user/Users.vue'

const Users = () => import(/* webpackChunkName: "users_rights_roles" */ '../components/user/Users.vue')
// import Rights from '../components/power/Rights.vue'
const Rights = () => import(/* webpackChunkName: "users_rights_roles" */ '../components/power/Rights.vue')
// import Roles from '../components/power/Roles.vue'
const Roles = () => import(/* webpackChunkName: "users_rights_roles" */ '../components/power/Roles.vue')


// import Cate from '../components/goods/Cate.vue'
const Cate = () => import(/* webpackChunkName: "Cate_Params" */ '../components/goods/Cate.vue')
// import Params from '../components/goods/Params.vue'
const Params = () => import(/* webpackChunkName: "Cate_Params" */ '../components/goods/Params.vue')

// import GoodsList from '../components/goods/List.vue'
const GoodsList = () => import(/* webpackChunkName: "GoodsList_Add" */ '../components/goods/List.vue')
// import Add from '../components/goods/Add.vue'
const Add = () => import(/* webpackChunkName: "GoodsList_Add" */ '../components/goods/Add.vue')

// import Orders from '../components/orders/Orders.vue'
const Orders = () => import(/* webpackChunkName: "Orders" */ '../components/orders/Orders.vue')

// import Report from '../components/reports/Report.vue'
const Report = () => import(/* webpackChunkName: "Report" */ '../components/reports/Report.vue')

Vue.use(VueRouter)

const routes = [

]

const router = new VueRouter({
	routes: [
		// 重定向地址
		{
			path: '/',
			redirect: '/login'
		},
		{
			path: '/login',
			component: Login
		},
		{
			path: '/home',
			component: Home,
			redirect: '/welcome',
			children: [
				{
					path: '/welcome',
					component: Welcome
				},
				{
						path: '/users',
						component: Users
				},
				{
					path: '/rights',
					component: Rights
				},
				{
					path: '/roles',
					component: Roles
				},
				{
					path: '/categories',
					component: Cate
				},
				{
					path: '/params',
					component: Params
				},
				{
					path: '/goods',
					component: GoodsList
				},
				{
						path: '/goods/add',
						component: Add
				},
				{
						path: '/orders',
						component: Orders
				},
				{
						path: '/reports',
						component: Report
				},
			]
		}
	]
})

// 挂载路由导航守卫
router.beforeEach((to, from, next) => {
	// to => 将要访问的路径
	// from => 从哪个路径跳转而来
	// next => 是个函数，表示放行
	// next()=>放行   next('/login')=>	强制跳转

	if (to.path === '/login') {
		return next();
	}

	// 获取token
	const tokenStr = window.sessionStorage.getItem('token')
	if (!tokenStr) {
		return next('/login');
	} else {
		next();
	}
})

export default router
